Support Linux's advanced crashkernel= syntax
authorKeir Fraser <keir.fraser@citrix.com>
Mon, 26 Apr 2010 11:12:12 +0000 (12:12 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Mon, 26 Apr 2010 11:12:12 +0000 (12:12 +0100)
commitc1cfb1a358c12bdf1284f6bcf55407366efaf485
tree6dedec1891e2f79822663ae6c8b881e938665b04
parentefaca454ab76878603ed9c2ce61b94e9bba0fe35
Support Linux's advanced crashkernel= syntax

Quoting the original Linux patch's description:

"This patch adds a extended crashkernel syntax that makes the value of
 reserved system RAM dependent on the system RAM itself:

    crashkernel=3D<range1>:<size1>[,<range2>:<size2>,...][@offset]
    range=3Dstart-[end]

 For example:

    crashkernel=3D512M-2G:64M,2G-:128M

 The motivation comes from distributors that configure their
 crashkernel command line automatically with some configuration tool
 (YaST, you know ;)). Of course that tool knows the value of System
 RAM, but if the user removes RAM, then the system becomes unbootable
 or at least unusable and error handling is very difficult."

For x86, other than Linux we pass the actual amount of RAM rather than
the highest page's address (to cope with sparse physical address
maps).

This still needs to be hooked up for ia64.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen/arch/x86/setup.c
xen/common/kexec.c
xen/include/xen/kexec.h